package edu.sias.hyzn.service;

import java.util.List;
import edu.sias.hyzn.domain.Patient;
import edu.sias.hyzn.vo.EyeAnalysisResult;

/**
 * 患者信息Service接口
 * 
 * @author Ailzr
 * @date 2025-03-18
 */
public interface IPatientService 
{
    /**
     * 查询患者信息
     * 
     * @param id 患者信息主键
     * @return 患者信息
     */
    public Patient selectPatientById(Long id);

    /**
     * 查询患者信息列表
     * 
     * @param patient 患者信息
     * @return 患者信息集合
     */
    public List<EyeAnalysisResult> selectPatientList(Patient patient, Integer status);

    /**
     * 新增患者信息
     * 
     * @param patient 患者信息
     * @return 结果
     */
    public Long insertPatient(Patient patient);

    /**
     * 修改患者信息
     * 
     * @param patient 患者信息
     * @return 结果
     */
    public int updatePatient(Patient patient);

//    /**
//     * 批量删除患者信息
//     *
//     * @param ids 需要删除的患者信息主键集合
//     * @return 结果
//     */
//    public int deletePatientByIds(Long[] ids);
//
//    /**
//     * 删除患者信息信息
//     *
//     * @param id 患者信息主键
//     * @return 结果
//     */
//    public int deletePatientById(Long id);

    public int deleteVisitByIds(Long[] ids);

    public int deleteVisitById(Long id);

    EyeAnalysisResult selectVisitById(Long visit_id);

    List<Patient> selectPatientInfoList(Patient patient);
}
